<?php
include('ichecker/ichecker-api.inc.php');

class OtherController extends Controller{
public $layout='//layouts/column2';
private $api = "http://api.sickw.com/api.php?show=no&method=simple";
private $key="zGmMawn8OHW2sDCLX4ZbKRJk0d5QBrwing_chou_0908@yahoo.com";
//example http://api.sickw.com/api.php?show=yes&keye=349t374t734687t6348t63468example@mail.ro&imei=012428000154566&method=simple
	public function filters()
	{
		return array(
			'accessControl', // perform access control for CRUD operations
			'postOnly + delete', // we only allow deletion via POST request
		);
	}
	public function accessRules()
	{
		return array(
			array('allow',  // allow all users to perform 'index' and 'view' actions
				'actions'=>array('index','view','lrsuccessfull', 'checkkorea','Resultblacklist'),
				'users'=>array('*'),
			),
			array('allow', // allow authenticated user to perform 'create' and 'update' actions
				'actions'=>array(''),
				'users'=>array('@'),
			),
			array('allow', // allow admin user to perform 'admin' and 'delete' actions
				'actions'=>array('admin','delete','checkimei'),
				'users'=>array('admin'),
			),
			array('deny',  // deny all users
				'users'=>array('*'),
			),
		);
	}
	
	public function actionCheckImei(){
		$model = new ImeiForm;
		if (isset($_POST['ImeiForm'])){
			$iduser = UserUtils::getUserId();
			$cre = Credit::model()->findByAttributes(array('iduser'=>$iduser));
			$price = 0.4;
			$check= 1;
			if($cre->sodu < $price ){
				$model->error = 'Bạn không đủ credit thực hiện dịch vụ này';
				$model->addError('error', 'Bạn không đủ credit thực hiện dịch vụ này');
				$check = -1;
			}else{
				$model->attributes = $_POST['ImeiForm'];
				$model->result = '';
				$response="";
			 try{
				 	if(strlen($model->imei) != 15){
						$model->addError('error', 'Số IMEI phải 15 chữ số');
						$model->error='Số IMEI phải 15 chữ số';
						$check = -1;
					}else if(!is_numeric($model->imei)){
						$model->addError('error', 'Số IMEI chỉ chứa 15 chữ số, không bao gồm ký tự');
						$model->error='Số IMEI chỉ chứa 15 chữ số, không bao gồm ký tự';
						$check = -1;
					}else{
					 	$ch = curl_init();
					 	$url = $this->api. "&keye=". $this->key. "&imei=". $model->imei;
						curl_setopt($ch,CURLOPT_URL,$url);
						//curl_setopt($ch,CURLOPT_POST,1); 
						curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
						//curl_setopt($ch, CURLOPT_POSTFIELDS,$postdata);
						$response = curl_exec($ch);						
					}			    
				} 
				catch(exception $e)
				{
				   $response="";
				}
				
				
				$check1 = strpos($response, "You don't have enough credits!");
				$check2 = strpos($response, "We are sorry, but imei check server is curently offline.");
				$check3 = strpos($response, "We are sorry, but this imei is for a product that has been replaced.");
				$check4 = strpos($response, "We are sorry, but only Iphone imei's are allowed.");
				$check5 = strpos($response, "We are sorry, but this imei is incorrect.");
				
				if(isset($check1) && $check1){
					$check= -1;
					$model->error == 'Server check đang bảo trì, vui lòng thử lại sau.';
					$model->addError('error', 'Server check đang bảo trì, vui lòng thử lại sau.');
				}
				
				if(isset($check2) && $check2){	
					$check= -1;				
					$model->error == 'Server check đang bảo trì, vui lòng thử lại sau.';
					$model->addError('error', 'Server check đang bảo trì, vui lòng thử lại sau.');
				}
					
				if(isset($check3) && $check3){
					$check= -1;
					$model->error == 'Chúng tôi rất tiếc, IMEI này là dành cho một sản phẩm đã được thay thế.';
					$model->addError('error', 'Chúng tôi rất tiếc, IMEI này là dành cho một sản phẩm đã được thay thế.');
				}

				if(isset($check3) && $check4){
					$check= -1;
					$model->error == 'Server không check imei ipad.';
					$model->addError('error', 'Server không check imei ipad.');
				}
							
				if(isset($check5) && $check5){
					$check= -1;
					$model->error == 'IMEI không hợp lệ, vui lòng thử lại';
					$model->addError('error', 'IMEI không hợp lệ, vui lòng thử lại');
				}					
					
				}
				
				
				/*print_r($response);die();*/
				if($check != -1){
					$model->error = '';
					$cre->sodu -= $price;
					$cre->dasai += $price;
					$cre->update();
					$model->result = $response;
					//save history
					Checkimeidao::saveCheckimei($model);
					/*echo "alert($model->result);";
					die();*/
				}
		}
		
		$this->render('checkimei',array( 'model'=>$model));
	}
	private $korea = 'http://89.137.253.14/korea.php';
	private $australia = 'http://89.137.253.14/ausblock.php';
	private $softbank = 'http://89.137.253.14/softbank.php';
	
	public  function actionCheckKorea(){
		$model = new ImeiForm;
		if(isset($_REQUEST['ImeiForm'])){
			$model->attributes = $_REQUEST['ImeiForm'];
			
			$model->imei = str_replace(" ", "", $model->imei);
			$postdata = "altu=". $model->imei;
			$ch = curl_init();
			curl_setopt($ch,CURLOPT_URL,'http://89.137.253.14/korea.php');
			//curl_setopt($ch,CURLOPT_POST,1); 
			curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
			curl_setopt($ch, CURLOPT_POSTFIELDS,$postdata);
			$resultserver = curl_exec($ch);
			$model->result = $resultserver;
		}
		$this->render('checkkorea',array( 'model'=>$model, 'typeapi'=>'korea'));
	}
	
	public  function actionResultblacklist(){
		if(isset( $_REQUEST['imei']) && isset($_REQUEST['typeapi'])){
			$imei =  $_REQUEST['imei'];
			$typeapi=$_REQUEST['typeapi'];
			$apiblacklist ='';
			switch($typeapi){
				case 'korea':
					$apiblacklist=$this->korea;
					break;
				case 'australia':
					$apiblacklist=$this->australia;
					break;
				case 'softbank':
					$apiblacklist=$this->softbank;
					break;
			}
			$imei = str_replace(" ", "", $imei);
			$postdata = "altu=". $imei;
			$ch = curl_init();
			curl_setopt($ch,CURLOPT_URL,$apiblacklist);
			//curl_setopt($ch,CURLOPT_POST,1); 
			curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
			curl_setopt($ch, CURLOPT_POSTFIELDS,$postdata);
			$resultserver = curl_exec($ch);
			echo $resultserver;
		}else{
			echo "";
		}
	}
}